package com.caregiver.watch.business.user.service;

import com.caregiver.watch.business.user.model.dto.AddUserReminderParam;
import com.caregiver.watch.business.user.model.dto.UpdateEnabledStatusParam;
import com.caregiver.watch.business.user.model.dto.UpdateUserReminderParam;
import com.caregiver.watch.business.user.model.vo.UserReminderVo;

import java.util.List;

/**
 * @Description: 用户通知服务
 * @Author 疆戟
 * @Date 2025/8/23 15:38
 * @Version 1.0
 */
public interface UserReminderService {

    /**
     * 查询用户提醒列表
     *
     * @return 用户通知列表
     */
    List<UserReminderVo> queryUserReminderList();


    /**
     * 添加用户提醒
     *
     * @param param 提醒信息
     * @return 是否添加成功
     */
    Boolean addUserReminder(AddUserReminderParam param);

    /**
     * 删除用户提醒
     *
     * @param id 提醒ID
     * @return 是否删除成功
     */
    Boolean deleteUserReminder(Long id);

    /**
     * 修改用户提醒
     *
     * @param param 提醒信息
     * @return 是否修改成功
     */
    Boolean updateUserReminder(UpdateUserReminderParam param);

    /**
     * 查询用户提醒
     *
     * @param id 提醒ID
     * @return 提醒信息
     */
    UserReminderVo queryUserReminder(Long id);

    /**
     * 修改用户提醒启用状态
     *
     * @param param 提醒信息
     * @return 是否修改成功
     */
    Boolean updateEnabledStatus(UpdateEnabledStatusParam param);
}
